<?php
/**
 * 
 * @author fengshuang
 * 2015-4-21
 * UTF-8
 */

class Lib_Redis_String extends Lib_Redis_Base {

	function __construct() {

	}
	/**设置一个string值
	 */
	public static function set($key,$value){
		self::_init ();
		return self::$_redis->SET( self::$prefix.$key, $value );
	}
	/**获取一个string值
	 */
	public static function get($key,$value = false){
		self::_init ();
		return self::$_redis->GET( self::$prefix.$key );
	}
	
	/**
	 * 模糊匹配keys
	 * @param unknown $keyPatt
	 */
	public static function keys($keyPatt){
		self::_init();
		return self::$_redis->keys(self::$prefix.$keyPatt);
	}
	
	/**
	将值value关联到key，并将key的生存时间设为seconds(以秒为单位)。
	成功返回true
	*/
	public static function setex($key,$expire,$value){
		self::_init ();
		return self::$_redis->SETEX( self::$prefix.$key,$expire,$value );
	}
	/**
	同时设置一个或多个key-value对。
		$array_mset=array('date'=>'2012.3.5',
			'time'=>'9.09a.m.',
			'weather'=>'sunny'
			);
	*/
	public static function mset($arr = array()){
		self::_init ();
		if(is_array($arr)){
			return self::$_redis->MSET( $arr );
		}
		return false;
	}
	/**
	*返回所有(一个或多个)给定key的值。
	*/
	public static  function mget($arr = array()){
		self::_init ();
		if(is_array($arr)&&!empty($arr)){
			return self::$_redis->MGET( $arr );
		}
		return false;
	}

	/**
	*返回key所储存的字符串值的长度。。
	*/
	public static function strlenght($key){
		self::_init ();
		return self::$_redis->STRLEN( self::$prefix.$key );
	}

	/**
	 * 浮点数递增
	 */
	public static function incrbyfloat($key,$floatnum){
		self::_init ();
		return self::$_redis->INCRBYFLOAT( self::$prefix.$key, $floatnum);
	}

	/**
	自增
	 */
	public static function incr($key, $num = 1){
		self::_init ();
		return self::$_redis->INCR( self::$prefix.$key, $num);
	}
	/**
	自减
	 */
	public  static  function decr($key, $num = 1){
		self::_init ();
		return self::$_redis->DECR( self::$prefix.$key, $num);
	}

	/**
	 * 删除一个KEY
	 * @param unknown $key
	 * @return number
	 */
	public static function delKey($key){
	    self::_init();
	    return self::$_redis->del(self::$prefix.$key);
	}
	
}